<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <title>7.then的返回值</title>
    </head>
    <body>
        <!-- 
            then的返回值，一定是一个Promise实例对象(x)，那么这个Promise实例成功还是失败？成功的value，失败reason是多少呢？
                ①如果返回的是非Promise值，x的状态就是成功，成功的value是那个非Promise值
                ②如果抛出异常,x的状态就是失败的，失败的reason是抛出的异常值
                ③如果返回的是一个新的Promise值，那么x的状态与值，都和新的Promise保持一致
         -->
        <script type="text/javascript" >
            let p = new Promise((resolve,reject)=>{
                resolve(666)
            })

            let x = p.then(
                (value)=>{
                    // console.log('p成功了',value)
                    // return false
                    // throw 678
                    return new Promise((resolve,reject)=>{reject(777)})
                },
                // (reason)=>{console.log('p失败了',reason)}
            )

            x.then(
                value => {
                    console.log('x成功了',value)
                },
                reason => {
                    console.log('x失败了',reason)
                }
            )
        </script>
    </body>
</html>